1. Field of the Invention
This invention relates to the construction of statements including programs, commands, and queries, and more specifically, to an "easy-to use" graphical user interface that enables a user to construct such statements, and even more specifically, where such statements are query statements for information retrieval.
2. Description of the Related Art
Database system technology is growing in vastness and importance as more and more detailed information is being compiled into accessible databases. Advancements in many technologies including imaging, storage, and database technologies are allowing vast amounts of imagery to be digitized, compiled, and stored in databases. Examples of such digitized imagery include geographic imagery from satellites, imaged documents from vast library collections, and digitized imagery from x-rays. The technology advancements in database management systems is allowing such information to be accessed at optimized speeds and with increasingly more data integrity and reliability. However, all of these advancements in technology do not achieve their full potential usefulness unless everyday novice users can formulate queries to access the vast amount of information in the databases.
Information retrieval is an important aspect of database technology, and the ease of use in retrieving information is critical as more and more information is being retrievable by everyday, non-expert, users. This is becoming even more important as more and more information is being accessible via the internet. Everyday internet users are not necessarily experts in information retrieval. As such, the user interface for composing queries to retrieve information is an important component of database systems and other computer systems that involve information retrieval.
A central goal in user interface design for query systems has been the creation of easy-to-use interfaces that require minimal training. A wide variety of interface styles have been employed including menu-driven, forms-based, natural language, and structured language with automatic completion. Graphical styles have also been employed including: connection diagrams, flowcharts, nested windows, and iconic displays.
In a form based interface, a user fills in the blank fields in the form, and hits submit. Providing a form for a user to fill out makes it difficult to provide flexibility in creating a variety of different queries. It is difficult to take into consideration the number of searchable objects and all of the possible relationships among these objects within a form, thereby limiting the breadth of queries that can be generated from a form. An HTML document on the internet is an example of a form based interface.
In a natural language interface, such as where a user types in free-form English, there is usually not enough guidance that is given to a user. As a result, it is difficult for a user to formulate queries that the database system understands. A user can easily stray outside the vocabulary of the system. In such an unstructured environment, it takes more than a novice user to know what input the computer system can receive and process. The problem with a typical natural language interface is that it does not provide enough guidance to a user.
Although each of the above techniques has its strength, each falls short of the goal of a natural interface that is accessible to both novice and expert users.
"A Knowledge-Based Database Assistant with a Menu-Based Natural Language User-Interface," Xu Wu, IEICE Trans. Inf. & Syst., Vol. E76-D, NO. 10, October 1993, p. 1276+, discloses a query-pattern user-interface where an English-like sentence contains several parentheses such as: EQU fingsic! the ( ) of ( ) which ( ) the ( ).
For each blank-phrase, a constraint defines the valid value range. When a user selects the example query pattern to make a query, the system shows the user the available fillers of all blanks. By reviewing the available fillers menu, the user may fill the query pattern and make an English-like query expression as follows: EQU fingsic! the (name) of (department) which (located-in) the (London).
The advantage of this query-pattern facility lies in the query-pattern-based guidance facility which is based on the domain concepts model and the contents of the underlying database. However, such an interface with menus is essentially a static interface. It is not possible to build up a complex query from simpler components. In addition, reviewing all available options in a menu in order to fill in the blanks can be time consuming for a user and does not provide sufficient flexibility in constructing a query.